<script>
  //匿名函数自调用，匿名函数有一个实参，二个形参，可以解决数据污染问题
    //但是数据外面的用不了，可以赋值给window对象外部使用
    ;(function (window,undefined){//第一个形参---解决作用域查找问题，可以压缩体积
                                  //第二个形参---避免ie6，7，8出现undefined
        function innt(el){
        //获取所有的数据
    let els=document.querySelectorAll(el)
        //遍历数据，讲js dom绑定在jq对象上
        for(let i=0;i<els.length;i++){
            //i 索引
            //els[i]获取js标签对象 
            this[i]=els[i]
        }
        this.length=els.length
        }
        let jQuery=function(el){
            return new innt(el)
        }
        
        //给jq增加一个快捷操作，也就是静态方法，改静态方法可以给init添加原型方法
        jQuery.extend=function (object){
            for(let key in object){
                innt.prototype[key]=object[key]
            }
        }
        innt.prototype={
            css(cssAttr,cssVal){
                for(let i=0;i<this.length;i++){
                    this[i].style[cssAttr]=cssVal
                }
                return this
            },
            ajax(options){},
            attr(options){},
            addClass(options){},
        }
        window.jQuery=window.$=jQuery
    })(window)
    $.extend({bg(){

    }
    })
评论 ( 0 )


</script>